﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Collections;

namespace Universitario.DAO
{
    public class Representante_EmpresaDAO
    {
        private static DataClasses1DataContext dc = new DataClasses1DataContext();
        private static UsuarioDAO usuarioDao = new UsuarioDAO();

        public static ArrayList erros
        {
            get;
            set;
        }

        /// <exception cref="ArgumentException">A exception é lançada quando algum campo do Usuário é inválido.</exception>
        public static void Insert(Representante_Empresa representante)
        {
            // Validar campos de usuário
            if (!UsuarioDAO.isValido(representante.Usuario))
            {
                erros.Add(UsuarioDAO.erros);
            }

            if (erros.Count != 0)
            {
                throw new ArgumentException();
            }

            dc.Representante_Empresas.InsertOnSubmit(representante);
            dc.SubmitChanges();
        }

        public static Representante_Empresa SelectById(long id)
        {
            var query = from rep in dc.Representante_Empresas
                        where rep.id == id
                        select rep;

            return query.FirstOrDefault();
        }

        public static Representante_Empresa SelectByCPFSenha( String cpf, String senha )
        {
            var query = from rep in dc.Representante_Empresas
                        join usuarios in dc.Usuarios on
                        rep.usuario_id equals usuarios.id
                        where usuarios.cpf == cpf &&
                        usuarios.senha == senha
                        select rep;

            return query.FirstOrDefault();
        }
    }
}